home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 8 / FM Towns Free Software Collection 8.iso / t_os / defgen / defgen.bas < prev    next >
BASIC Source File  |  1994-06-01  |  49KB  |  1,272 lines

  1. 1000 ' CATLOG.DEF GENERATOR
  2. 1050 ' SAVE "DEFGEN7.BAS",A
  3. 1100 '   Author -- Tomoya Andoh (PED00201@niftyserve.or.jp  JINX)
  4. 1150 '
  5. 1200 ' Ver. 0-1  ---  Date 17 Jan.1993
  6. 1250 ' Ver. 0-2  ---  Date 29 Jan.1993
  7. 1300 ' Ver. 0-3  ---  Date  1 Feb.1993
  8. 1350 ' Ver. 0-4  ---  Date 14 Feb.1993
  9. 1400 ' Ver. 0-5  ---  Date 19 Feb.1993
  10. 1450 ' Ver. 0-5a ---  Date 21 Feb.1993
  11. 1500 ' Ver. 0-5b ---  Date 24 Feb.1993
  12. 1550 ' Ver. 0-6  ---  Date  8 Mar.1993
  13. 1600 ' Ver. 0-6a ---  Date 10 Aug.1993
  14. 1650 ' Ver. 0-6b ---  Date  7 Dec.1993
  15. 1700 ' Ver. 0-6c ---  Date  9 Dec.1993
  16. 1750 ' Ver. 0-7  ---  Date 30 Jan.1994 CATLOG v1.0n 対応
  17. 1800 '
  18. 1850 '
  19. 1900 '
  20. 1950 ON ERROR GOTO *エラーやで
  21. 2000 DEFINT A-Z
  22. 2050 DIM CMD$(100),MES$(100),DF$(100),MOT$(200),Y_N_FLAG(100),CMD_W$(100),JUN(100),TRG(10)
  23. 2100   VER$="v0.7 " : VER_CL$="v1.0n"
  24. 2150 SCREEN@ 2
  25. 2200   WIDTH 0,25
  26. 2250   WINDOW
  27. 2300   PALETTE
  28. 2350   CONSOLE 2,21,2
  29. 2400   GOSUB *パレット設定
  30. 2450   COLOR 7,%200,,0
  31. 2500   CLS
  32. 2550   GOSUB *開始画面設定
  33. 2600   GOSUB *パラメタリード
  34. 2650   GOSUB *コマンドリストREAD
  35. 2700   GOSUB *QUICK_SORT
  36. 2750   GOSUB *元DEFファイル読み込み
  37. 2800   GOSUB *強制サポートセット
  38. 2850 '  FOR I=0 TO 50:PRINT USING "###:@";I,DF$(I),:NEXT I:A$=INPUT$(1)
  39. 2900 '
  40. 2950 '文字定数定義
  41. 3000   TB$=CHR$(&H09)
  42. 3050 'マウス設定_0
  43. 3100   MOUSE 0
  44. 3150   MOUSE 4,5*8-2,1*19,75*8+2,24*19
  45. 3200   ON MOUSE(2) GOSUB *左クリック_0
  46. 3250   MOUSE(2) ON
  47. 3300 *LOOP_0
  48. 3350   LOCATE 18,22 : PRINT "マウス 左クリックで次にすすみます";
  49. 3400   WAIT 36
  50. 3450   LOCATE 18,22 : PRINT "                                 ";
  51. 3500   WAIT 12
  52. 3550   GOTO *LOOP_0
  53. 3600 *次頁
  54. 3650 'マウス設定_1
  55. 3700   ON MOUSE(2) GOSUB *左クリック
  56. 3750   ON MOUSE(4) GOSUB *右クリック
  57. 3800   MOUSE 1,10,10,1
  58. 3850   GOSUB *設定画面表示
  59. 3900   MOUSE(2) ON
  60. 3950   MOUSE(4) ON
  61. 4000 *LOOP : GOTO *LOOP
  62. 4050 *終了処理
  63. 4100   MOUSE 5
  64. 4150   IF R_CODE THEN
  65. 4200       GOSUB *更新処理
  66. 4250   ELSE
  67. 4300       GOSUB *中断処理
  68. 4350   ENDIF
  69. 4400   PALETTE
  70. 4450   PLAY OFF
  71. 4500   CONSOLE 0,25,0
  72. 4550   COLOR 7,0,7,0
  73. 4600   CLS
  74. 4650   SYSTEM
  75. 4700   END
  76. 4750 *左クリック
  77. 4800   MOUSE(2) OFF
  78. 4850   SX=MOUSE(0) : SY=MOUSE(1)
  79. 4900   WX=SX \ 8 : WY=SY \ 19
  80. 4950   PLAY "N"+STR$(WY+48)
  81. 5000 '  LOCATE 45,20 : PRINT USING "SX=#### SY=####  WX=#### WY=####";SX,SY,WX,WY
  82. 5050   IF PAGE>=101 THEN *左クリック_101
  83. 5100 'Y=1 終了処理 & HELP
  84. 5150   IF SY>=19 AND SY<=36 THEN
  85. 5200       IF SX>=502 AND SX<600 THEN R_CODE=-1 : RETURN *終了処理
  86. 5250       IF SX>=358 AND SX<=464 THEN R_CODE=0 : RETURN *終了処理
  87. 5300       IF SX>=38 AND SX<=112 THEN PAGE=101 : GOSUB *HELP0
  88. 5350   ENDIF
  89. 5400   IF PAGE=3 THEN *左クリック_2
  90. 5450   IF PAGE=4 THEN *左クリック_3
  91. 5500   IF PAGE=101 THEN *左クリック_101
  92. 5550 'Y=3 入力
  93. 5600   IF SY>=57 AND SY<=74 THEN J=100 : GOSUB *キー入力
  94. 5650 'Y=4 出力
  95. 5700   IF SY>=76 AND SY<=93 THEN J=1 : GOSUB *キー入力
  96. 5750 'Y=5 TMP
  97. 5800   IF SY>=95 AND SY<=112 THEN
  98. 5850       J=3
  99. 5900       IF SX>=70 THEN GOSUB *キー入力
  100. 5950       IF SX<=64 THEN GOSUB *ON_OFF
  101. 6000   ENDIF
  102. 6050 'Y=6 インデックスのパス
  103. 6100   IF SY>=114 AND SY<=131 THEN
  104. 6150       J=62
  105. 6200       IF SX>=70 THEN GOSUB *キー入力
  106. 6250       IF SX<=64 THEN GOSUB *ON_OFF
  107. 6300   ENDIF
  108. 6350 'Y=7 読み飛ばす入力ディレクトリTMP
  109. 6400   IF SY>=133 AND SY<=150 THEN
  110. 6450       J=51
  111. 6500       IF SX>=70 THEN GOSUB *キー入力
  112. 6550       IF SX<=64 THEN GOSUB *ON_OFF
  113. 6600   ENDIF
  114. 6650 'Y=8 DL出力ドライブ・ディレクトリ
  115. 6700   IF SY>=152 AND SY<=169 THEN
  116. 6750       J=42
  117. 6800       IF SX>=70 THEN GOSUB *キー入力
  118. 6850       IF SX<=64 THEN GOSUB *ON_OFF
  119. 6900   ENDIF
  120. 6950 'Y=11 検索
  121. 7000   IF SY>=209 AND SY<=226 THEN
  122. 7050       J=16
  123. 7100       IF SX>=70 THEN GOSUB *キー入力
  124. 7150       IF SX<=64 THEN GOSUB *ON_OFF
  125. 7200   ENDIF
  126. 7250 'Y=12 No検索
  127. 7300   IF SY>=228 AND SY<=245 THEN
  128. 7350       J=15
  129. 7400       IF SX>=70 THEN GOSUB *キー入力
  130. 7450       IF SX<=64 THEN GOSUB *ON_OFF
  131. 7500   ENDIF
  132. 7550 'Y=14 メッセージ出力
  133. 7600   IF SY>=266 AND SY<=283 THEN
  134. 7650       J=0
  135. 7700       IF SX>=70 THEN GOSUB *キー入力
  136. 7750       IF SX<=64 THEN GOSUB *ON_OFF
  137. 7800   ENDIF
  138. 7850 'Y=16 TMPO-SIZE
  139. 7900   IF SY>=304 AND SY<=321 THEN
  140. 7950       J=17
  141. 8000       IF SX>=70 THEN GOSUB *キー入力
  142. 8050       IF SX<=64 THEN GOSUB *ON_OFF
  143. 8100   ENDIF
  144. 8150 'Y=17 MOJI-SIZE
  145. 8200   IF SY>=323 AND SY<=340 THEN
  146. 8250       J=36
  147. 8300       IF SX>=70 THEN GOSUB *キー入力
  148. 8350       IF SX<=64 THEN GOSUB *ON_OFF
  149. 8400   ENDIF
  150. 8450 'Y=19 インデックスモード
  151. 8500   IF SY>=361 AND SY<=378 THEN
  152. 8550       J=2
  153. 8600       IF DF$(2)=":2" AND SX>=190 AND SX<=288 THEN
  154. 8650            DF$(2)=":1" : GOSUB *SW2
  155. 8700       ENDIF
  156. 8750       IF DF$(2)=":1" AND SX>=294 AND SX<=392 THEN
  157. 8800            DF$(2)=":2" : GOSUB *SW2
  158. 8850       ENDIF
  159. 8900   ENDIF
  160. 8950 'Y=21 メールの扱い
  161. 9000   IF SY>=399 AND SY<=416 THEN
  162. 9050       J=4
  163. 9100       IF Y_N_FLAG(J)=0 AND SX>=294 AND SX<=328 THEN GOSUB *オプション選択
  164. 9150       IF Y_N_FLAG(J)=1 AND SX>=334 AND SX<=384 THEN GOSUB *オプション選択
  165. 9200   ENDIF
  166. 9250 'Y=20 新ファイル作成条件
  167. 9300   IF SY>=380 AND SY<=397 THEN
  168. 9350       IF SX>=214 AND SX<=320 THEN J=37 : GOSUB *オプション選択
  169. 9400       IF SX>=334 AND SX<=480 THEN J=38 : GOSUB *オプション選択
  170. 9450       IF SX>=494 AND SX<=608 THEN J=50 : GOSUB *オプション選択
  171. 9500   ENDIF
  172. 9550 'Y=22 次頁
  173. 9600   IF SY>=418 AND SY<=435 THEN
  174. 9650       IF SX>=566 THEN PAGE=3 : GOSUB *設定画面2
  175. 9700   ENDIF
  176. 9750   MOUSE(2) ON
  177. 9800   RETURN
  178. 9850 *トリガーチェック
  179. 9900  FOR I=0 TO 5
  180. 9950      IF TRG(I)<>TRG0 AND Y_N_FLAG(TRG(I))=1 AND Y_N_FLAG(TRG0)=0 THEN
  181. 10000          J=TRG(I) : WY=3+I
  182. 10050          IF I<=1 THEN GOSUB *オプション選択 ELSE GOSUB *ON_OFF
  183. 10100      ENDIF
  184. 10150  NEXT I
  185. 10200  J=TRG0
  186. 10250  RETURN
  187. 10300 *左クリック_2
  188. 10350 'Y=3 中断 & 続行
  189. 10400   IF SY>=57 AND SY<=74 THEN
  190. 10450       IF Y_N_FLAG(7)=1 AND Y_N_FLAG(8)=0 THEN
  191. 10500           J=7 : WY=16 : GOSUB *オプション選択
  192. 10550       ENDIF
  193. 10600       TRG0=8 : GOSUB *トリガーチェック
  194. 10650       J=TRG0 : WY=3 : GOSUB *オプション選択
  195. 10700   ENDIF
  196. 10750 'Y=4 CATLOGで整理したファイルからインデックスを作る
  197. 10800   IF SY>=76 AND SY<=93 THEN
  198. 10850       TRG0=44 : GOSUB *トリガーチェック
  199. 10900       J=TRG0 : WY=4 : GOSUB *オプション選択
  200. 10950   ENDIF
  201. 11000 'Y=5 データライブラリをひとつのファイルにまとめる
  202. 11050   IF SY>=95 AND SY<=112 THEN
  203. 11100       J=53
  204. 11150       IF SX<=64 THEN
  205. 11200           TRG0=J : GOSUB *トリガーチェック
  206. 11250           WY=5 : GOSUB *ON_OFF
  207. 11300       ENDIF
  208. 11350       IF SX>=70 THEN GOSUB *キー入力
  209. 11400   ENDIF
  210. 11450 'Y=6 ファイルと会議室対応ファイル作成
  211. 11500   IF SY>=114 AND SY<=131 THEN
  212. 11550       J=43
  213. 11600       IF SX<=64 THEN
  214. 11650           TRG0=J : GOSUB *トリガーチェック
  215. 11700           WY=6 : GOSUB *ON_OFF
  216. 11750       ENDIF
  217. 11800       IF SX>=70 THEN GOSUB *キー入力
  218. 11850   ENDIF
  219. 11900 'Y=7 整理済ログからID収集
  220. 11950   IF SY>=133 AND SY<=150 THEN
  221. 12000       J=46
  222. 12050       IF SX<=64 THEN
  223. 12100           TRG0=J : GOSUB *トリガーチェック
  224. 12150           WY=7 : GOSUB *ON_OFF
  225. 12200       ENDIF
  226. 12250       IF SX>=70 THEN GOSUB *キー入力
  227. 12300   ENDIF
  228. 12350 'Y=8 CATLOG生成ファイルからインデックス作成,ID/ハンドル対応ファイル作成
  229. 12400   IF SY>=152 AND SY<=169 THEN
  230. 12450       J=45
  231. 12500       IF SX<=64 THEN
  232. 12550           TRG0=J : GOSUB *トリガーチェック
  233. 12600           WY=8 : GOSUB *ON_OFF
  234. 12650       ENDIF
  235. 12700       IF SX>=70 THEN GOSUB *キー入力
  236. 12750   ENDIF
  237. 12800 'Y=11 ログを解凍しながら実行,凍結しながら実行
  238. 12850   IF SY>=209 AND SY<=226 THEN
  239. 12900       IF SX>=38 AND SX<=296 THEN J=32 : GOSUB *オプション選択
  240. 12950       IF SX>=310 AND SX<=600 THEN J=33 : GOSUB *オプション選択
  241. 13000   ENDIF
  242. 13050 'Y=12 ***log整理を入れない,削除した発言は削除
  243. 13100   IF SY>=228 AND SY<=245 THEN
  244. 13150       IF SX>=38 AND SX<=296 THEN J=39 : GOSUB *オプション選択
  245. 13200       IF SX>=310 AND SX<=600 THEN J=29 : GOSUB *オプション選択
  246. 13250   ENDIF
  247. 13300 'Y=13 HP,会議室,LIBは整理しない
  248. 13350   IF SY>=247 AND SY<=264 THEN
  249. 13400       IF SX>=38 AND SX<=216 THEN J=20 : GOSUB *オプション選択
  250. 13450       IF SX>=230 AND SX<=408 THEN J=22 : GOSUB *オプション選択
  251. 13500       IF SX>=422 AND SX<=600 THEN J=24 : GOSUB *オプション選択
  252. 13550   ENDIF
  253. 13600 'Y=14 PATIO,MAIL,BILLは整理しない
  254. 13650   IF SY>=266 AND SY<=283 THEN
  255. 13700       IF SX>=38 AND SX<=216 THEN J=21 : GOSUB *オプション選択
  256. 13750       IF SX>=230 AND SX<=408 THEN J=23 : GOSUB *オプション選択
  257. 13800       IF SX>=422 AND SX<=600 THEN J=25 : GOSUB *オプション選択
  258. 13850   ENDIF
  259. 13900 'Y=16 処理を途中で中断する
  260. 13950   IF SY>=304 AND SY<=321 THEN
  261. 14000       IF SX>=38 AND SX<=312 THEN
  262. 14050           IF Y_N_FLAG(7)=0 AND Y_N_FLAG(8)=1 THEN
  263. 14100               J=8 : WY=3 : GOSUB *オプション選択
  264. 14150           ENDIF
  265. 14200           J=7 : WY=16 : GOSUB *オプション選択
  266. 14250       ENDIF
  267. 14300   ENDIF
  268. 14350 'Y=17 Re-sort
  269. 14400   IF SY>=323 AND SY<=340 THEN
  270. 14450       IF SX>=38 AND SX<=312 THEN J=48 : GOSUB *オプション選択
  271. 14500   ENDIF
  272. 14550 'Y=18 ログ表示しながら実行
  273. 14600   IF SY>=342 AND SY<=359 THEN
  274. 14650       IF SX>=38 AND SX<=312 THEN J=31 : GOSUB *オプション選択
  275. 14700   ENDIF
  276. 14750 'Y=22 前頁,次頁
  277. 14800   IF SY>=418 AND SY<=435 THEN
  278. 14850       IF SX>=526 AND SX<=560 THEN
  279. 14900           PAGE=2
  280. 14950           GOSUB *設定画面1
  281. 15000       ENDIF
  282. 15050       IF SX>=566 THEN
  283. 15100           PAGE=4
  284. 15150           GOSUB *設定画面3
  285. 15200       ENDIF
  286. 15250   ENDIF
  287. 15300   MOUSE(2) ON
  288. 15350   RETURN
  289. 15400 *左クリック_3
  290. 15450 'Y=3 All_Yes,All_No & All引用
  291. 15500   IF SY>=57 AND SY<=74 THEN
  292. 15550       IF SX>=38 AND SX<=224 THEN
  293. 15600           IF Y_N_FLAG(9)=0 AND Y_N_FLAG(10)=1 THEN
  294. 15650               J=10 : GOSUB *オプション選択
  295. 15700           ENDIF
  296. 15750           J=9 : GOSUB *オプション選択
  297. 15800       ENDIF
  298. 15850       IF SX>=238 AND SX<=416 THEN
  299. 15900           IF Y_N_FLAG(9)=1 AND Y_N_FLAG(10)=0 THEN
  300. 15950               J=9 : GOSUB *オプション選択
  301. 16000           ENDIF
  302. 16050           J=10 : GOSUB *オプション選択
  303. 16100       ENDIF
  304. 16150       IF SX>=430 AND SX<=600 THEN J=26 : GOSUB *オプション選択
  305. 16200   ENDIF
  306. 16250 'Y=4 DON作らない,静かに,だまれ
  307. 16300   IF SY>=76 AND SY<=93 THEN
  308. 16350       IF SX>=38 AND SX<=216 THEN J=13 : GOSUB *オプション選択
  309. 16400       IF SX>=230 AND SX<=408 THEN J=5 : GOSUB *オプション選択
  310. 16450       IF SX>=422 AND SX<=600 THEN J=6 : GOSUB *オプション選択
  311. 16500   ENDIF
  312. 16550 'Y=7 全ファイル検索
  313. 16600   IF SY>=133 AND SY<=150 THEN J=14 : GOSUB *オプション選択
  314. 16650 'Y=8 サブディレクトリ内無視
  315. 16700   IF SY>=152 AND SY<=169 THEN J=30 : GOSUB *オプション選択
  316. 16750 'Y=11 yymmdd以降&以前収集
  317. 16800   IF SY>=209 AND SY<=226 THEN
  318. 16850       IF SX<=64 THEN J=18 : GOSUB *ON_OFF
  319. 16900       IF SX>=70 AND SX<=312 THEN J=18 : GOSUB *キー入力
  320. 16950       IF SX>=326 AND SX<=352 THEN J=19 : GOSUB *ON_OFF
  321. 17000       IF SX>=358 AND SX<=600 THEN J=19 : GOSUB *キー入力
  322. 17050   ENDIF
  323. 17100 'Y=12 ID収集
  324. 17150   IF SY>=228 AND SY<=245 THEN
  325. 17200       J=35
  326. 17250       IF SX<=64 THEN GOSUB *ON_OFF
  327. 17300       IF SX>=70 THEN GOSUB *キー入力
  328. 17350   ENDIF
  329. 17400 'Y=15 削除から除くファイル名
  330. 17450   IF SY>=285 AND SY<=302 THEN
  331. 17500       J=28
  332. 17550       IF SX<=64 THEN GOSUB *ON_OFF
  333. 17600       IF SX>=70 THEN GOSUB *キー入力
  334. 17650   ENDIF
  335. 17700 'Y=16 今日より古いファイルの削除
  336. 17750   IF SY>=304 AND SY<=321 THEN
  337. 17800       IF SX>=38 AND SX<=312 THEN J=27 : GOSUB *オプション選択
  338. 17850       IF SX>=326 AND SX<=600 THEN J=61 : GOSUB *オプション選択
  339. 17900   ENDIF
  340. 17950 'Y=17 フォーラムラインを削除,FAPXレスファイルを削除
  341. 18000   IF SY>=323 AND SY<=340 THEN
  342. 18050       IF SX>=38 AND SX<=312 THEN J=40 : GOSUB *オプション選択
  343. 18100       IF SX>=326 AND SX<=600 THEN J=49 : GOSUB *オプション選択
  344. 18150   ENDIF
  345. 18200 'Y=18 削除した発言の表題を表示
  346. 18250   IF SY>=342 AND SY<=359 THEN
  347. 18300       IF SX>=38 AND SX<=312 THEN J=41 : GOSUB *オプション選択
  348. 18350   ENDIF
  349. 18400 'Y=22 前頁
  350. 18450   IF SY>=418 AND SY<=435 THEN
  351. 18500       IF SX>=566 THEN
  352. 18550           PAGE=3
  353. 18600           GOSUB *設定画面2
  354. 18650       ENDIF
  355. 18700   ENDIF
  356. 18750   MOUSE(2) ON
  357. 18800   RETURN
  358. 18850 *左クリック_101
  359. 18900   ON MOUSE(4) GOSUB *次頁
  360. 18950   MOUSE(4) ON
  361. 19000   IF SY>=57 AND SY<=19*(3+((100-C_ST) \ 4))+17 THEN
  362. 19050       I=-1
  363. 19100       IF SX<=152 THEN I=0
  364. 19150       IF SX>=158 AND SX<=312 THEN I=1
  365. 19200       IF SX>=318 AND SX<=472 THEN I=2
  366. 19250       IF SX>=480 THEN I=3
  367. 19300       IF I<>-1 THEN
  368. 19350           HLP=4*((SY \ 19)-3)+I
  369. 19400           GOSUB *HELP1
  370. 19450       ENDIF
  371. 19500   ENDIF
  372. 19550   MOUSE(2) ON
  373. 19600   RETURN
  374. 19650 *右クリック
  375. 19700   R_CODE=0
  376. 19750   RETURN *終了処理
  377. 19800 *左クリック_0
  378. 19850   MOUSE(2) OFF
  379. 19900   PAGE=PAGE+1
  380. 19950   RETURN *次頁
  381. 20000 *オプション選択
  382. 20050   GOSUB *設定変更
  383. 20100   GOSUB *DISP_COM
  384. 20150   RETURN
  385. 20200 *ON_OFF
  386. 20250   IF Y_N_FLAG(J)=1 THEN Y_N_FLAG(J)=0 ELSE Y_N_FLAG(J)=1
  387. 20300   GOSUB *DISP_COM
  388. 20350   RETURN
  389. 20400 *設定変更
  390. 20450   IF DF$(J)="yes" THEN
  391. 20500         DF$(J)="no"
  392. 20550         Y_N_FLAG(J)=0
  393. 20600   ELSE
  394. 20650         DF$(J)="yes"
  395. 20700         Y_N_FLAG(J)=1
  396. 20750   ENDIF
  397. 20800   RETURN
  398. 20850 *DISP_COM
  399. 20900   IF J=100 THEN GOSUB *SW100 : RETURN
  400. 20950   IF J>60 THEN 21250
  401. 21000   IF J<=30 THEN 21050 ELSE 21150
  402. 21050   ON J+1 GOSUB *SW0,*SW1,*SW2,*SW3,*SW4,*SW5,*SW6,*SW7,*SW8,*SW9,*SW10,*SW11,*SW12,*SW13,*SW14,*SW15,*SW16,*SW17,*SW18,*SW19,*SW20,*SW21,*SW22,*SW23,*SW24,*SW25,*SW26,*SW27,*SW28,*SW29,*SW30
  403. 21100   RETURN
  404. 21150   ON J-30 GOSUB *SW31,*SW32,*SW33,*SW34,*SW35,*SW36,*SW37,*SW38,*SW39,*SW40,*SW41,*SW42,*SW43,*SW44,*SW45,*SW46,*SW47,*SW48,*SW49,*SW50,*SW51,*SW52,*SW53,*SW54,*SW55,*SW56,*SW57,*SW58,*SW59,*SW60
  405. 21200   RETURN
  406. 21250   ON J-60 GOSUB *SW61,*SW62,*SW63
  407. 21300   RETURN
  408. 21350 *キー入力
  409. 21400   GOSUB *キー入力1
  410. 21450   GOSUB *DISP_COM
  411. 21500   RETURN
  412. 21550 *キー入力1
  413. 21600   LOCATE 0,23:PRINT KACNV$(RIGHT$(MES$(J),LEN(MES$(J))-2));"  ";
  414. 21650       X=0:Y=23:M=79:C=205:GOSUB *ボックス
  415. 21700   LINE INPUT DUMMY$
  416. 21750   IF DUMMY$<>"" THEN
  417. 21800       DF$(J)=":"+DUMMY$
  418. 21850   ENDIF
  419. 21900   RETURN
  420. 21950 *設定画面表示
  421. 22000   CLS 1 : CLS 3
  422. 22050   LOCATE 0,1 : PRINT SPC(78);
  423. 22100   LOCATE 63, 1 : PRINT "更新して終了";
  424. 22150   LOCATE 45, 1 : PRINT "更新せずに終了";
  425. 22200     X=63:Y=1:M=12:C=203:GOSUB *ボックス
  426. 22250     X=45:Y=1:M=14:C=204:GOSUB *ボックス
  427. 22300   LOCATE  5, 1 : : PRINT "HELP!";
  428. 22350     X=5:Y=1:M=10:C=204:GOSUB *ボックス
  429. 22400 *設定画面1
  430. 22450   CLS 1 : PAGE=2
  431. 22500   COLOR 7,%200,,4
  432. 22550     LOCATE  2, 2 : PRINT "ドライブ,ディレクトリを指定してください。"
  433. 22600     WY=3  : GOSUB *SW100
  434. 22650     WY=4  : GOSUB *SW1
  435. 22700     WY=5  : GOSUB *SW3
  436. 22750     WY=6  : GOSUB *SW62
  437. 22800     WY=7  : GOSUB *SW51
  438. 22850     WY=8  : GOSUB *SW42
  439. 22900     LOCATE  2,10 : PRINT "ファイルを指定してください。(ワイルドカード使用可)"
  440. 22950     WY=11 : GOSUB *SW16
  441. 23000     WY=12 : GOSUB *SW15
  442. 23050     LOCATE  2,13 : PRINT "メッセージ出力先をフルパスで指定してください。"
  443. 23100     WY=14 : GOSUB *SW0
  444. 23150     LOCATE  2,15 : PRINT "ファイルサイズ指定オプション(1Kバイト単位で指定)"
  445. 23200     WY=16 : GOSUB *SW17
  446. 23250     WY=17 : GOSUB *SW36
  447. 23300     LOCATE  2,18 : PRINT "処理内容を選択してください。"
  448. 23350     WY=19 : GOSUB *SW2
  449. 23400     WY=20 : GOSUB *SW37 : GOSUB *SW38 : GOSUB *SW50
  450. 23450     WY=21 : GOSUB *SW4
  451. 23500     LOCATE 71,22 : PRINT "次頁";
  452. 23550       X=71:Y=22:M=4:C=204:GOSUB *ボックス
  453. 23600   COLOR 7,%200,,0
  454. 23650   RETURN
  455. 23700 *設定画面2
  456. 23750   CLS 1 : PAGE=3
  457. 23800   COLOR 5,%200,,4
  458. 23850     LOCATE  2, 2 : PRINT "入力ドライブ指定以外の処理開始スイッチ(ONにできるのは1個だけ)"
  459. 23900   COLOR 7,%200,,4
  460. 23950     WY=3 : GOSUB *SW8
  461. 24000     WY=4 : GOSUB *SW44
  462. 24050     WY=5 : GOSUB *SW53
  463. 24100     WY=6 : GOSUB *SW43
  464. 24150     WY=7 : GOSUB *SW46
  465. 24200     WY=8 : GOSUB *SW45
  466. 24250     LOCATE  2,10 : PRINT "オプションを選択してください。"
  467. 24300     WY=11 : GOSUB *SW32 : GOSUB *SW33
  468. 24350     WY=12 : GOSUB *SW39 : GOSUB *SW29
  469. 24400     WY=13 : GOSUB *SW20 : GOSUB *SW22 : GOSUB *SW24
  470. 24450     WY=14 : GOSUB *SW21 : GOSUB *SW23 : GOSUB *SW25
  471. 24500     WY=16 : GOSUB *SW7
  472. 24550     WY=17 : GOSUB *SW48
  473. 24600     WY=18 : GOSUB *SW31
  474. 24650     LOCATE 66,22 : PRINT "前頁";
  475. 24700       X=66:Y=22:M=4:C=204:GOSUB *ボックス
  476. 24750     LOCATE 71,22 : PRINT "次頁";
  477. 24800       X=71:Y=22:M=4:C=204:GOSUB *ボックス
  478. 24850   COLOR 7,%200,,0
  479. 24900   RETURN
  480. 24950 *設定画面3
  481. 25000   CLS 1 : PAGE=4
  482. 25050     LOCATE  2, 2 : PRINT "オプションスイッチ"
  483. 25100     WY=3 : GOSUB *SW9 : GOSUB *SW10 : GOSUB *SW26
  484. 25150     WY=4 : GOSUB *SW13 : GOSUB *SW5 : GOSUB *SW6
  485. 25200     LOCATE  2, 6 : PRINT "検索系オプション"
  486. 25250     WY=7 : GOSUB *SW14
  487. 25300     WY=8 : GOSUB *SW30
  488. 25350     LOCATE  2,10 : PRINT "収集系オプション(日付入力はyy年mm月dd日をyymmddの形式で入力する)"
  489. 25400     WY=11 : GOSUB *SW18 : GOSUB *SW19
  490. 25450     WY=12 : GOSUB *SW35
  491. 25500     LOCATE  2,14 : PRINT "削除系オプション <★DANGER★>"
  492. 25550     WY=15 : GOSUB *SW28
  493. 25600     WY=16 : GOSUB *SW27 : GOSUB *SW61
  494. 25650     WY=17 : GOSUB *SW40 : GOSUB *SW49
  495. 25700     WY=18 : GOSUB *SW41
  496. 25750     LOCATE 71,22 : PRINT "前頁";
  497. 25800       X=71:Y=22:M=4:C=204:GOSUB *ボックス
  498. 25850   COLOR 7,%200,,0
  499. 25900   RETURN
  500. 25950 *HELP0
  501. 26000   ON MOUSE(4) GOSUB *次頁
  502. 26050   MOUSE(4) ON
  503. 26100   CLS 1 : PAGE=101
  504. 26150   LOCATE 0, 1 : PRINT "  HELP表示 OPTIONS.DOCを利用しています    右クリックで設定画面に戻ります";
  505. 26200   X=2:Y=1:M=75:C=203:GOSUB *ボックス
  506. 26250   LOCATE 5, 2 : PRINT "表示したいスイッチにマウスカーソルを合わせ左クリックしてください"
  507. 26300   IF CMD_W$(0)<>"" THEN
  508. 26350       C_ST=0 : FLAG=0
  509. 26400   ELSE
  510. 26450       FLAG=-1
  511. 26500   ENDIF
  512. 26550   FOR I=0 TO 100
  513. 26600       IF FLAG AND CMD_W$(I)<>"" THEN C_ST=I : FLAG=0
  514. 26650       IF CMD_W$(I)<>"" THEN
  515. 26700           X=20*((I-C_ST) MOD 4):Y=3+((I-C_ST) \ 4)
  516. 26750           LOCATE X,Y : PRINT USING "&                 &";CMD_W$(I);
  517. 26800           M=19:C=204:GOSUB *ボックス
  518. 26850       ENDIF
  519. 26900   NEXT I
  520. 26950   RETURN
  521. 27000 *HELP1
  522. 27050   ON MOUSE(4) GOSUB *HELP0
  523. 27100   MOUSE(4) ON
  524. 27150   CLS 1 : PAGE=102
  525. 27200   LOCATE 0, 1 : PRINT "  HELP表示 OPTIONS.DOCを利用しています    右クリックで前画面に戻ります  ";
  526. 27250   X=2:Y=1:M=75:C=203:GOSUB *ボックス
  527. 27300   OPEN ".\OPTIONSJ.DOC" FOR INPUT AS #1
  528. 27350   LINE INPUT #1,A$
  529. 27400   LOCATE 1,4:PRINT CMD_W$(HLP+C_ST);MES$(JUN(HLP+C_ST))
  530. 27450   IF LEFT$(A$,1)=";" THEN
  531. 27500       A$=RIGHT$(A$,LEN(A$)-1) : P0=INSTR(A$,":") : P1=INSTR(A$,";")
  532. 27550       IF P1<>0 AND P1<P0 THEN P0=0
  533. 27600       IF P0<>0 THEN
  534. 27650           IF LEFT$(A$,P0-1)=CMD_W$(HLP+C_ST) THEN 28200
  535. 27700       ELSE
  536. 27750           IF P1=0 THEN
  537. 27800               IF A$=CMD_W$(HLP+C_ST) THEN 28200
  538. 27850           ELSE
  539. 27900               IF LEFT$(A$,P1-1)=CMD_W$(HLP+C_ST) THEN 28200
  540. 27950           ENDIF
  541. 28000       ENDIF
  542. 28050   ENDIF
  543. 28100   LINE INPUT #1,A$
  544. 28150   GOTO 27450
  545. 28200   LOCATE 1,4:PRINT CHR$(&H1B);"[0K";A$
  546. 28250   LINE INPUT #1,A$
  547. 28300   WHILE KLEFT$(A$,1)<>"☆"
  548. 28350       LINE INPUT #1,A$
  549. 28400   WEND
  550. 28450   WHILE KLEFT$(A$,1)<>"★"
  551. 28500       LINE INPUT #1,A$
  552. 28550       IF KLEFT$(A$,1)<>"★" THEN PRINT "  ";A$
  553. 28600   WEND
  554. 28650   CLOSE #1
  555. 28700   BEEP
  556. 28750   RETURN
  557. 28800 *SW100
  558. 28850       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  559. 28900     LOCATE  5,WY : PRINT "入力ドライブ:ディレクトリ";DF$(100)
  560. 28950                     C=205:GOSUB *ボックス
  561. 29000     RETURN
  562. 29050 *SW1
  563. 29100       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  564. 29150     LOCATE  5,WY : PRINT "出力ドライブ:ディレクトリ";DF$(1)
  565. 29200                     C=205:GOSUB *ボックス
  566. 29250     RETURN
  567. 29300 *SW3
  568. 29350       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  569. 29400       X=9:     M=66:      GOSUB *ボックス_P
  570. 29450     IF Y_N_FLAG(3)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  571. 29500     LOCATE  5,WY : PRINT DUM$;" 作業ドライブ:ディレクトリ";DF$(3)
  572. 29550       X=5:     M=3:C=CL:  GOSUB *ボックス
  573. 29600       X=9:     M=66:C=206:GOSUB *ボックス
  574. 29650     RETURN
  575. 29700 *SW16
  576. 29750       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  577. 29800       X=9:     M=66:      GOSUB *ボックス_P
  578. 29850     IF Y_N_FLAG(16)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  579. 29900     LOCATE  5,WY : PRINT DUM$;" 検索するファイル";DF$(16)
  580. 29950       X=5:     M=3:C=CL:  GOSUB *ボックス
  581. 30000       X=9:     M=66:C=206:GOSUB *ボックス
  582. 30050     RETURN
  583. 30100 *SW15
  584. 30150       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  585. 30200       X=9:     M=66:      GOSUB *ボックス_P
  586. 30250     IF Y_N_FLAG(15)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  587. 30300     LOCATE  5,WY : PRINT DUM$;" 検索しないファイル";DF$(15)
  588. 30350       X=5:     M=3:C=CL:  GOSUB *ボックス
  589. 30400       X=9:     M=66:C=CL: GOSUB *ボックス
  590. 30450     RETURN
  591. 30500 *SW0
  592. 30550   COLOR 6,%200,,4
  593. 30600       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  594. 30650       X=9:     M=66:      GOSUB *ボックス_P
  595. 30700     IF Y_N_FLAG(0)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  596. 30750     LOCATE  5,WY : PRINT DUM$;" メッセージ出力ファイル名";DF$(0)
  597. 30800       X=5:     M=3:C=CL:  GOSUB *ボックス
  598. 30850       X=9:     M=66:C=206:GOSUB *ボックス
  599. 30900   COLOR 7,%200,,4
  600. 30950     RETURN
  601. 31000 *SW2
  602. 31050       X=24:Y=WY:M=12:     GOSUB *ボックス_P
  603. 31100       X=37:     M=12:     GOSUB *ボックス_P
  604. 31150   COLOR 6,%200,,4
  605. 31200     LOCATE  5,WY : PRINT "インデックスモード";
  606. 31250   COLOR 7,%200,,4
  607. 31300     PRINT " 全体でひとつ フォーラム毎"
  608. 31350      IF DF$(2)=":1" THEN CL=207:CE=202 ELSE CL=202:CE=207
  609. 31400       X=24:     M=12:C=CL:GOSUB *ボックス
  610. 31450       X=37:     M=12:C=CE:GOSUB *ボックス
  611. 31500     RETURN
  612. 31550 *SW4
  613. 31600       X=37:Y=WY:M=4:      GOSUB *ボックス_P
  614. 31650       X=42:     M=6:      GOSUB *ボックス_P
  615. 31700   COLOR 6,%200,,4
  616. 31750     LOCATE  5,WY : PRINT "メールはひとつのファイルで処理";
  617. 31800   COLOR 7,%200,,4
  618. 31850     PRINT "  する しない";
  619. 31900       IF Y_N_FLAG(4)=1 THEN CL=207:CE=202 ELSE CL=202:CE=207
  620. 31950       X=37:     M=4:C=CL: GOSUB *ボックス
  621. 32000       X=42:     M=6:C=CE: GOSUB *ボックス
  622. 32050     RETURN
  623. 32100 *SW37
  624. 32150   COLOR 6,%200,,4
  625. 32200     LOCATE  5,WY : PRINT "新ファイルを作るのは";
  626. 32250   COLOR 7,%200,,4
  627. 32300       X=27:Y=WY:M=13:      GOSUB *ボックス_P
  628. 32350     LOCATE  28,WY : PRINT "発言番号001";
  629. 32400      IF Y_N_FLAG(37)=1 THEN CL=207 ELSE CL=202
  630. 32450                     C=CL: GOSUB *ボックス
  631. 32500     RETURN
  632. 32550 *SW38
  633. 32600       X=42:Y=WY:M=18:     GOSUB *ボックス_P
  634. 32650     LOCATE 42,WY : PRINT "より小さな発言番号";
  635. 32700      IF Y_N_FLAG(38)=1 THEN CE=207 ELSE CE=202
  636. 32750                     C=CE: GOSUB *ボックス
  637. 32800     RETURN
  638. 32850 *SW50
  639. 32900       X=62:Y=WY:M=13:     GOSUB *ボックス_P
  640. 32950     LOCATE 63,WY : PRINT "発言番号x01";
  641. 33000      IF Y_N_FLAG(50)=1 THEN CE=207 ELSE CE=202
  642. 33050                     C=CE: GOSUB *ボックス
  643. 33100     RETURN
  644. 33150 *SW32
  645. 33200       X=5:Y=WY:M=32:      GOSUB *ボックス_P
  646. 33250     LOCATE  5,WY : PRINT "LHA圧縮ファイルを解凍しながら実行"
  647. 33300      IF Y_N_FLAG(32)=1 THEN CL=207 ELSE CL=202
  648. 33350                      C=CL:GOSUB *ボックス
  649. 33400     RETURN
  650. 33450 *SW20
  651. 33500       X=5:Y=WY:M=22:      GOSUB *ボックス_P
  652. 33550     LOCATE  X,WY : PRINT "HP は 整 理 し な い";
  653. 33600      IF Y_N_FLAG(20)=1 THEN CL=207 ELSE CL=202
  654. 33650                      C=CL:GOSUB *ボックス
  655. 33700     RETURN
  656. 33750 *SW21
  657. 33800       X=5:Y=WY:M=22:      GOSUB *ボックス_P
  658. 33850     LOCATE  X,WY : PRINT "PATIOは整理しない";
  659. 33900      IF Y_N_FLAG(21)=1 THEN CL=207 ELSE CL=202
  660. 33950                      C=CL:GOSUB *ボックス
  661. 34000     RETURN
  662. 34050 *SW22
  663. 34100       X=29:Y=WY:M=22:     GOSUB *ボックス_P
  664. 34150     LOCATE  X,WY : PRINT " 会議室は整理しない";
  665. 34200      IF Y_N_FLAG(22)=1 THEN CL=207 ELSE CL=202
  666. 34250                      C=CL:GOSUB *ボックス
  667. 34300     RETURN
  668. 34350 *SW23
  669. 34400       X=29:Y=WY:M=22:      GOSUB *ボックス_P
  670. 34450     LOCATE X,WY : PRINT " MAILは整理しない";
  671. 34500      IF Y_N_FLAG(23)=1 THEN CL=207 ELSE CL=202
  672. 34550                      C=CL:GOSUB *ボックス
  673. 34600     RETURN
  674. 34650 *SW24
  675. 34700       X=53:Y=WY:M=22:      GOSUB *ボックス_P
  676. 34750     LOCATE X,WY : PRINT " LIBは整理しない";
  677. 34800      IF Y_N_FLAG(24)=1 THEN CL=207 ELSE CL=202
  678. 34850                      C=CL:GOSUB *ボックス
  679. 34900     RETURN
  680. 34950 *SW25
  681. 35000       X=53:Y=WY:M=22:      GOSUB *ボックス_P
  682. 35050     LOCATE X,WY : PRINT " BILLは整理しない";
  683. 35100      IF Y_N_FLAG(25)=1 THEN CL=207 ELSE CL=202
  684. 35150                      C=CL:GOSUB *ボックス
  685. 35200     RETURN
  686. 35250 *SW39
  687. 35300       X=5:Y=WY:M=32:      GOSUB *ボックス_P
  688. 35350     LOCATE X,WY : PRINT "「*****log整理」を入れない";
  689. 35400      IF Y_N_FLAG(39)=1 THEN CL=207 ELSE CL=202
  690. 35450                      C=CL:GOSUB *ボックス
  691. 35500     RETURN
  692. 35550 *SW7
  693. 35600       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  694. 35650     IF Y_N_FLAG(7)=1 THEN CL=207 ELSE CL=202
  695. 35700     LOCATE  X,WY : PRINT " 処理を第2段階で中断する"
  696. 35750                      C=CL:GOSUB *ボックス
  697. 35800     RETURN
  698. 35850 *SW8
  699. 35900       X=5:Y=WY:M=70:     GOSUB *ボックス_P
  700. 35950     IF Y_N_FLAG(8)=1 THEN CE=207 ELSE CE=202
  701. 36000     LOCATE X,WY : PRINT " 中 断 し た 処 理 を 続 行 す る"
  702. 36050                      C=CE:GOSUB *ボックス
  703. 36100     RETURN
  704. 36150 *SW9
  705. 36200       X=5:Y=WY:M=23:      GOSUB *ボックス_P
  706. 36250     IF Y_N_FLAG(9)=1 THEN CL=207 ELSE CL=202
  707. 36300     LOCATE X,WY : PRINT "全ての質問にYESと答える"
  708. 36350                      C=CL:GOSUB *ボックス
  709. 36400     RETURN
  710. 36450 *SW10
  711. 36500       X=30:Y=WY:M=22:     GOSUB *ボックス_P
  712. 36550     IF Y_N_FLAG(10)=1 THEN CE=207 ELSE CE=202
  713. 36600     LOCATE X,WY : PRINT "全ての質問にNOと答える"
  714. 36650                      C=CE:GOSUB *ボックス
  715. 36700     RETURN
  716. 36750 *SW26
  717. 36800       X=54:Y=WY:M=21:      GOSUB *ボックス_P
  718. 36850     IF Y_N_FLAG(26)=1 THEN CL=207 ELSE CL=202
  719. 36900     LOCATE X,WY : PRINT "全部引用発言とする"
  720. 36950                      C=CL:GOSUB *ボックス
  721. 37000     RETURN
  722. 37050 *SW13
  723. 37100       X=5:Y=WY:M=22:      GOSUB *ボックス_P
  724. 37150     IF Y_N_FLAG(13)=1 THEN CL=207 ELSE CL=202
  725. 37200     LOCATE  X,WY : PRINT "CATLOG.DONを作らない"
  726. 37250                      C=CL:GOSUB *ボックス
  727. 37300     RETURN
  728. 37350 *SW5
  729. 37400       X=29:Y=WY:M=22:     GOSUB *ボックス_P
  730. 37450     IF Y_N_FLAG(5)=1 THEN CE=207 ELSE CE=202
  731. 37500     LOCATE X,WY : PRINT "静かに モード"
  732. 37550                      C=CE:GOSUB *ボックス
  733. 37600     RETURN
  734. 37650 *SW6
  735. 37700       X=53:Y=WY:M=22:     GOSUB *ボックス_P
  736. 37750     IF Y_N_FLAG(6)=1 THEN CQ=207 ELSE CQ=202
  737. 37800     LOCATE X,WY : PRINT "だまれ モード"
  738. 37850                      C=CQ:GOSUB *ボックス
  739. 37900     RETURN
  740. 37950 *SW14
  741. 38000       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  742. 38050     IF Y_N_FLAG(14)=1 THEN CL=207 ELSE CL=202
  743. 38100     LOCATE X,WY : PRINT "全ファイルを検索対象とする(前頁のオプションより優先します)遅くなるよ(^^;)"
  744. 38150                      C=CL:GOSUB *ボックス
  745. 38200     RETURN
  746. 38250 *SW30
  747. 38300       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  748. 38350     IF Y_N_FLAG(30)=1 THEN CL=207 ELSE CL=202
  749. 38400     LOCATE X,WY : PRINT "サブ・ディレクトリの検索をおこなわない"
  750. 38450                      C=CL:GOSUB *ボックス
  751. 38500     RETURN
  752. 38550 *SW18
  753. 38600       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  754. 38650       X=9:     M=30:      GOSUB *ボックス_P
  755. 38700     IF Y_N_FLAG(18)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  756. 38750     LOCATE  5,WY : PRINT USING "& & &&年&&月&&日以降の発言収集";DUM$,MID$(DF$(18),2,2),MID$(DF$(18),4,2),MID$(DF$(18),6,2)
  757. 38800       X=5:     M=3 :C=CL: GOSUB *ボックス
  758. 38850       X=9:     M=30:      GOSUB *ボックス
  759. 38900    RETURN
  760. 38950 *SW19
  761. 39000       X=41:Y=WY:M=3 :     GOSUB *ボックス_P
  762. 39050       X=45:     M=30:     GOSUB *ボックス_P
  763. 39100     IF Y_N_FLAG(19)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  764. 39150     LOCATE 41,WY : PRINT USING "& & &&年&&月&&日以前の発言収集";DUM$,MID$(DF$(19),2,2),MID$(DF$(19),4,2),MID$(DF$(19),6,2)
  765. 39200       X=41:     M=3 :C=CL:GOSUB *ボックス
  766. 39250       X=45:     M=30:     GOSUB *ボックス
  767. 39300    RETURN
  768. 39350 *SW35
  769. 39400       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  770. 39450       X=9:     M=66:      GOSUB *ボックス_P
  771. 39500     IF Y_N_FLAG(35)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  772. 39550     LOCATE  5,WY : PRINT DUM$;" IDの発言収集(複数指定可)";DF$(35)
  773. 39600       X=5:     M=3 :C=CL: GOSUB *ボックス
  774. 39650       X=9:     M=66:      GOSUB *ボックス
  775. 39700    RETURN
  776. 39750 *SW46
  777. 39800       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  778. 39850       X=9:     M=66:      GOSUB *ボックス_P
  779. 39900     IF Y_N_FLAG(46)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  780. 39950     LOCATE  5,WY : PRINT DUM$;" 整理済のファイルからIDで発言収集";DF$(46)
  781. 40000       X=5:     M=3 :C=CL: GOSUB *ボックス
  782. 40050       X=9:     M=66:      GOSUB *ボックス
  783. 40100    RETURN
  784. 40150 *SW17
  785. 40200       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  786. 40250       X=9:     M=66:      GOSUB *ボックス_P
  787. 40300     IF Y_N_FLAG(17)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  788. 40350     LOCATE  5,WY : PRINT DUM$;" テンポラリファイルサイズ(無指定で10240KB)";DF$(17)
  789. 40400       X=5:     M=3 :C=CL: GOSUB *ボックス
  790. 40450       X=9:     M=66:      GOSUB *ボックス
  791. 40500     RETURN
  792. 40550 *SW36
  793. 40600       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  794. 40650       X=9:     M=66:      GOSUB *ボックス_P
  795. 40700     IF Y_N_FLAG(36)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  796. 40750     LOCATE  5,WY : PRINT DUM$;" ひとつのファイルサイズ(無指定で800KB)";DF$(36)
  797. 40800       X=5:     M=3 :C=CL: GOSUB *ボックス
  798. 40850       X=9:     M=66:      GOSUB *ボックス
  799. 40900     RETURN
  800. 40950 *SW27
  801. 41000       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  802. 41050     IF Y_N_FLAG(27)=1 THEN CL=207 ELSE CL=202
  803. 41100     LOCATE  5,WY : PRINT "今日より古いファイルを削除/危険(~~)"
  804. 41150                      C=CL:GOSUB *ボックス
  805. 41200     RETURN
  806. 41250 *SW61
  807. 41300       X=41:Y=WY:M=34:      GOSUB *ボックス_P
  808. 41350     IF Y_N_FLAG(61)=1 THEN CL=207 ELSE CL=202
  809. 41400     LOCATE 41,WY : PRINT "今日より古いファイルを強制削除/危険"
  810. 41450                      C=CL:GOSUB *ボックス
  811. 41500     RETURN
  812. 41550 *SW40
  813. 41600       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  814. 41650     IF Y_N_FLAG(40)=1 THEN CL=207 ELSE CL=202
  815. 41700     LOCATE  5,WY : PRINT "- FFMHOB MES(  )の行を削除"
  816. 41750                      C=CL:GOSUB *ボックス
  817. 41800     RETURN
  818. 41850 *SW49
  819. 41900       X=41:Y=WY:M=34:      GOSUB *ボックス_P
  820. 41950     IF Y_N_FLAG(49)=1 THEN CL=207 ELSE CL=202
  821. 42000     LOCATE 41,WY : PRINT "FAPXのRESファイルを削除"
  822. 42050                      C=CL:GOSUB *ボックス
  823. 42100     RETURN
  824. 42150 *SW41
  825. 42200       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  826. 42250     IF Y_N_FLAG(41)=1 THEN CL=207 ELSE CL=202
  827. 42300     LOCATE  5,WY : PRINT "削除した発言の表題を表示する"
  828. 42350                      C=CL:GOSUB *ボックス
  829. 42400     RETURN
  830. 42450 *SW28
  831. 42500       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  832. 42550       X=9:     M=66:      GOSUB *ボックス_P
  833. 42600     IF Y_N_FLAG(28)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  834. 42650     LOCATE  5,WY : PRINT DUM$;" 削除から除くファイル名(複数指定可)";DF$(28);
  835. 42700       X=5:     M=3 :C=CL: GOSUB *ボックス
  836. 42750       X=9:     M=66:      GOSUB *ボックス
  837. 42800     RETURN
  838. 42850 *SW33
  839. 42900       X=39:Y=WY:M=36:      GOSUB *ボックス_P
  840. 42950     IF Y_N_FLAG(33)=1 THEN CL=207 ELSE CL=202
  841. 43000     LOCATE 39,WY : PRINT "ログを入力ディレクトリ毎に凍結しながら実行";
  842. 43050                      C=CL:GOSUB *ボックス
  843. 43100     RETURN
  844. 43150 *SW43
  845. 43200       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  846. 43250       X=9:Y=WY:M=66:      GOSUB *ボックス_P
  847. 43300     IF Y_N_FLAG(43)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  848. 43350     LOCATE  5,WY : PRINT DUM$;" ファイルと会議室の対応ファイル(フルパスのファイル名)";DF$(43)
  849. 43400       X=5:     M=3 :C=CL: GOSUB *ボックス
  850. 43450       X=9:     M=66:      GOSUB *ボックス
  851. 43500     RETURN
  852. 43550 *SW53
  853. 43600       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  854. 43650       X=9:Y=WY:M=66:      GOSUB *ボックス_P
  855. 43700     IF Y_N_FLAG(53)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  856. 43750     LOCATE  5,WY : PRINT DUM$;" データライブラリーをひとつのファイルにまとめる";DF$(53)
  857. 43800       X=5:     M=3 :C=CL: GOSUB *ボックス
  858. 43850       X=9:     M=66:      GOSUB *ボックス
  859. 43900     RETURN
  860. 43950 *SW51
  861. 44000       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  862. 44050       X=9:     M=66:      GOSUB *ボックス_P
  863. 44100     IF Y_N_FLAG(51)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  864. 44150     LOCATE  5,WY : PRINT DUM$;" 読み飛ばす入力ディレクトリ";DF$(51);
  865. 44200       X=5:     M=3 :C=CL: GOSUB *ボックス
  866. 44250       X=9:     M=66:      GOSUB *ボックス
  867. 44300     RETURN
  868. 44350 *SW62
  869. 44400       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  870. 44450       X=9:     M=66:      GOSUB *ボックス_P
  871. 44500     IF Y_N_FLAG(62)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  872. 44550     LOCATE  5,WY : PRINT DUM$;" インデックスのパス";DF$(62);
  873. 44600       X=5:     M=3 :C=CL: GOSUB *ボックス
  874. 44650       X=9:     M=66:      GOSUB *ボックス
  875. 44700     RETURN
  876. 44750 *SW42
  877. 44800       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  878. 44850       X=9:     M=66:      GOSUB *ボックス_P
  879. 44900     IF Y_N_FLAG(42)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  880. 44950     LOCATE  5,WY : PRINT DUM$;" データライブラリを別に整理";DF$(42);
  881. 45000       X=5:     M=3 :C=CL: GOSUB *ボックス
  882. 45050       X=9:     M=66:      GOSUB *ボックス
  883. 45100     RETURN
  884. 45150 *SW45
  885. 45200       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  886. 45250       X=9:     M=66:      GOSUB *ボックス_P
  887. 45300     IF Y_N_FLAG(45)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  888. 45350     LOCATE  5,WY : PRINT DUM$;" ID/ハンドル対応ファイルを作る";DF$(45);
  889. 45400       X=5:     M=3 :C=CL: GOSUB *ボックス
  890. 45450       X=9:     M=66:      GOSUB *ボックス
  891. 45500     RETURN
  892. 45550 *SW44
  893. 45600       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  894. 45650     IF Y_N_FLAG(44)=1 THEN CL=207 ELSE CL=202
  895. 45700     LOCATE  6,WY : PRINT "CATLOG整理ファイルからインデックスを作る";
  896. 45750                      C=CL:GOSUB *ボックス
  897. 45800     RETURN
  898. 45850 *SW31
  899. 45900       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  900. 45950     IF Y_N_FLAG(31)=1 THEN CL=207 ELSE CL=202
  901. 46000     LOCATE  5,WY : PRINT " ログ表示しながら実行する";
  902. 46050                      C=CL:GOSUB *ボックス
  903. 46100     RETURN
  904. 46150 *SW47
  905. 46200     IF DF$(47)=":1" THEN CE=207 : CQ=202 ELSE CE=202 : CQ=207
  906. 46250       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  907. 46300       X=34:    M=8 :      GOSUB *ボックス_P
  908. 46350       X=44:    M=8 :      GOSUB *ボックス_P
  909. 46400     IF Y_N_FLAG(47)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  910. 46450     LOCATE  5,WY : PRINT DUM$;
  911. 46500     COLOR 6 : PRINT " FAPXのログ保存モード";
  912. 46550     COLOR 7 : PRINT " 圧縮なし  圧縮あり";
  913. 46600       X=5:     M=3 :C=CL: GOSUB *ボックス
  914. 46650       X=34:     M=8 :C=CE:GOSUB *ボックス
  915. 46700       X=44:     M=8 :C=CQ:GOSUB *ボックス
  916. 46750     RETURN
  917. 46800 *SW48
  918. 46850       X=5:Y=WY:M=34:       GOSUB *ボックス_P 
  919. 46900     IF Y_N_FLAG(48)=1 THEN CL=207 ELSE CL=202
  920. 46950     LOCATE  5,WY : PRINT " CATLOG整理ファイルを再度ソートし直す";
  921. 47000                      C=CL: GOSUB *ボックス
  922. 47050     RETURN
  923. 47100 *SW29
  924. 47150       X=39:Y=WY:M=36:      GOSUB *ボックス_P
  925. 47200     IF Y_N_FLAG(29)=1 THEN CL=207 ELSE CL=202
  926. 47250     LOCATE X,WY : PRINT "削 除 発 言 は 整 理 に 含 め な い";
  927. 47300                      C=CL:GOSUB *ボックス
  928. 47350     RETURN
  929. 47400 '未サポート(DEFGENから使用する必要の無いスイッチを含む)
  930. 47450 *SW11 : '-Cancel-Answer-All-Sw
  931. 47500 *SW12 : '-Set-Time-Stamp-file
  932. 47550 *SW34 : '-Collect-1-ID:ABC01234
  933. 47600 *SW52 : '-Clear-Collect-ID
  934. 47650 *SW54 : '-CollectId:ABC01234
  935. 47700 *SW55 : '-f:CATLOGxx.DEF
  936. 47750 *SW56 : '-Do-from-stage-2
  937. 47800 *SW57 : '-Do-from-stage-3
  938. 47850 *SW58 : '-Do-only-stage-1
  939. 47900 *SW59 : '-Do-only-stage-2
  940. 47950 *SW60 : '-Do-only-stage-3
  941. 48000 *SW63 : '-BAT-Name-O:CTLG_NM.BAT
  942. 48050    RETURN
  943. 48100 *ボックス:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),OR,%C,BF : RETURN
  944. 48150 *ボックス_P:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),PSET,%200,BF : RETURN
  945. 48200 STOP
  946. 48250 *更新処理
  947. 48300   KILL DF_FILE$
  948. 48350   OPEN DF_FILE$ FOR OUTPUT AS #1
  949. 48400   PRINT #1,";DEFGEN生成ファイル"
  950. 48450   IF DF_FILE$<>"..\CATLOG.DEF" THEN
  951. 48500       Y_N_FLAG(55)=0 : DF$(55)=":"+DF_FILE$
  952. 48550   ELSE
  953. 48600       Y_N_FLAG(55)=0
  954. 48650   ENDIF
  955. 48700   FOR I=0 TO 100
  956. 48750       IF Y_N_FLAG(I)<>-1 THEN
  957. 48800           IF Y_N_FLAG(I)>0 THEN
  958. 48850               IF LEFT$(DF$(I),1)=":" THEN
  959. 48900                   DUMMY$=TB$+CMD$(I)+DF$(I)+TB$+MES$(I)
  960. 48950               ELSE
  961. 49000                   DUMMY$=TB$+CMD$(I)+TB$+MES$(I)
  962. 49050               ENDIF
  963. 49100           ELSE
  964. 49150               IF LEFT$(DF$(I),1)=":" THEN
  965. 49200                   DUMMY$=";"+TB$+CMD$(I)+DF$(I)+TB$+MES$(I)
  966. 49250               ELSE
  967. 49300                   DUMMY$=";"+TB$+CMD$(I)+TB$+MES$(I)
  968. 49350               ENDIF
  969. 49400           ENDIF
  970. 49450           PRINT #1,DUMMY$
  971. 49500       ENDIF
  972. 49550   NEXT I
  973. 49600   CLOSE #1
  974. 49650   RETURN
  975. 49700 *中断処理
  976. 49750   IF DG_FLAG=0 THEN
  977. 49800       NAME DF_FILE0$ AS DF_FILE$
  978. 49850   ENDIF
  979. 49900   RETURN
  980. 49950 *元DEFチェック
  981. 50000   FOR I=0 TO DF_MAX
  982. 50050       IF LEFT$(MOT$(I),1)="-" THEN
  983. 50100            YES_NO_FLAG=1
  984. 50150            P0=INSTR(MOT$(I),":")
  985. 50200            P1=INSTR(MOT$(I),";")
  986. 50250            IF P1<>0 AND P1<P0 THEN P0=0
  987. 50300            IF P0<>0 THEN
  988. 50350                 C0$=LEFT$(MOT$(I),P0-1)
  989. 50400                 IF P1=0 THEN
  990. 50450                     C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1)
  991. 50500                     C2$=""
  992. 50550                 ELSE
  993. 50600                     C1$=MID$(MOT$(I),P0,P1-P0)
  994. 50650                     C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  995. 50700                 ENDIF
  996. 50750            ELSE
  997. 50800                 C1$="yes"
  998. 50850                 IF P1=0 THEN
  999. 50900                     C0$=MOT$(I)
  1000. 50950                     C2$=""
  1001. 51000                 ELSE
  1002. 51050                     C0$=LEFT$(MOT$(I),P1-1)
  1003. 51100                     C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  1004. 51150                 ENDIF
  1005. 51200            ENDIF
  1006. 51250       ELSE
  1007. 51300           IF LEFT$(MOT$(I),1)=";"  AND MID$(MOT$(I),2,1)="-" THEN
  1008. 51350                YES_NO_FLAG=0
  1009. 51400                MOT$(I)=RIGHT$(MOT$(I),LEN(MOT$(I))-1)
  1010. 51450                P0=INSTR(MOT$(I),":")
  1011. 51500                P1=INSTR(MOT$(I),";")
  1012. 51550                IF P1<>0 AND P1<P0 THEN P0=0
  1013. 51600                IF P0<>0 THEN
  1014. 51650                     C0$=LEFT$(MOT$(I),P0-1)
  1015. 51700                     IF P1=0 THEN
  1016. 51750                         C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1)
  1017. 51800                         C2$=""
  1018. 51850                     ELSE
  1019. 51900                         C1$=MID$(MOT$(I),P0,P1-P0)
  1020. 51950                         C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  1021. 52000                     ENDIF
  1022. 52050                ELSE
  1023. 52100                     C1$="no"
  1024. 52150                     IF P1=0 THEN
  1025. 52200                         C0$=RIGHT$(MOT$(I),LEN(MOT$(I))-1)
  1026. 52250                         C2$=""
  1027. 52300                     ELSE
  1028. 52350                         C0$=LEFT$(MOT$(I),P1-1)
  1029. 52400                         C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  1030. 52450                     ENDIF
  1031. 52500                ENDIF
  1032. 52550           ENDIF
  1033. 52600       ENDIF
  1034. 52650       GOSUB *コマンド照合
  1035. 52700 '    PRINT C0$,C1$,P0,P1 : PRINT CMD$(J),DF$(J),MES$(J):A$=INPUT$(1)
  1036. 52750   NEXT I
  1037. 52800   RETURN
  1038. 52850 *コマンド照合
  1039. 52900   J=0
  1040. 52950   WHILE CMD$(J)<>C0$
  1041. 53000       J=J+1
  1042. 53050   WEND
  1043. 53100 'PRINT YES_NO_FLAG,Y_N_FLAG(J),C1$ : A$=INPUT$(1)
  1044. 53150 '  IF YES_NO_FLAG=1 AND Y_N_FLAG(J)=0 AND DG_FLAG=-1 THEN
  1045. 53200       DF$(J)=C1$
  1046. 53250       Y_N_FLAG(J)=YES_NO_FLAG
  1047. 53300 '  ENDIF
  1048. 53350   RETURN
  1049. 53400 *スイッチ拡張対策
  1050. 53450   J=0
  1051. 53500   WHILE Y_N_FLAG(J)<>-1
  1052. 53550       J=J+1
  1053. 53600   WEND
  1054. 53650   LOCATE 18,23 : PRINT
  1055. 53700   LOCATE 18,23 : PRINT USING "###番目に@を追加します";J,C0$;
  1056. 53750   CMD$(J)=C0$ : DF$(J)=C1$ : MES$(J)=C2$ : Y_N_FLAG(J)=0
  1057. 53800   IF DG_FLAG THEN
  1058. 53850        Y_N_FLAG(J)=YES_NO_FLAG
  1059. 53900   ELSE
  1060. 53950        Y_N_FLAG(J)=0
  1061. 54000   ENDIF
  1062. 54050   LOCATE 5,18: PRINT "最下行に『xxxx番目にxxxxxxxを追加します』の表示が現れた場合は"
  1063. 54100   LOCATE 5,19: PRINT "サポートスイッチ以外のスイッチが元DEFにあった場合です。この場合でも元DEFに"
  1064. 54150   LOCATE 5,20: PRINT "あったスイッチを新DEFにCOPYしますので、サポートするまではエディタで修正して"
  1065. 54200   LOCATE 5,21: PRINT "という限定付きですが使用可能です。"
  1066. 54250   RETURN
  1067. 54300 *コマンドリストREAD
  1068. 54350   I=0
  1069. 54400   OPEN "DEFGEN_D.DAT" FOR INPUT AS #1
  1070. 54450   WHILE NOT(EOF(1))
  1071. 54500      INPUT #1,DUMMY$
  1072. 54550      Y_N_FLAG(I)=VAL(DUMMY$)
  1073. 54600      INPUT #1,CMD$(I),DF$(I),MES$(I)
  1074. 54650      IF CMD$(I)="-I" THEN
  1075. 54700          SWAP Y_N_FLAG(I),Y_N_FLAG(100):SWAP CMD$(I),CMD$(100)
  1076. 54750          SWAP DF$(I),DF$(100)  :SWAP MES$(I),MES$(100)
  1077. 54800      ELSE
  1078. 54850          I=I+1
  1079. 54900      ENDIF
  1080. 54950   WEND
  1081. 55000   CML_MAX=I-1
  1082. 55050   CLOSE #1
  1083. 55100   RETURN
  1084. 55150 *元DEFファイル読み込み
  1085. 55200   LOCATE 18,22 : PRINT "元DEFファイルを読み込んでいます";
  1086. 55250   DG_FLAG=0
  1087. 55300   OPEN DF_FILE$ FOR INPUT AS #1
  1088. 55350   LINE INPUT #1,DUMMY$
  1089. 55400   IF DUMMY$=";DEFGEN生成ファイル" THEN
  1090. 55450       DG_FLAG=-1 : I=0
  1091. 55500   ELSE
  1092. 55550       IF LEFT$(DUMMY$,1)="-" THEN
  1093. 55600           MOT$(0)=DUMMY$ : I=1
  1094. 55650       ELSE
  1095. 55700           IF LEFT$(MOT$(I),1)=";"  AND MID$(MOT$(I),2,1)="-" THEN
  1096. 55750               MOT$(0)=DUMMY$ : I=1
  1097. 55800           ELSE
  1098. 55850               I=0
  1099. 55900           ENDIF
  1100. 55950       ENDIF
  1101. 56000   ENDIF
  1102. 56050   WHILE NOT(EOF(1))
  1103. 56100       LINE INPUT #1,DUMMY$
  1104. 56150       IF LEFT$(DUMMY$,1)="-" OR (LEFT$(DUMMY$,1)=";"  AND MID$(DUMMY$,2,1)="-") THEN
  1105. 56200           A=INSTR(DUMMY$,"-")
  1106. 56250           IF MID$(DUMMY$,A+1,1)>="A" AND MID$(DUMMY$,A+1,1)<="Z" THEN
  1107. 56300               MOT$(I)=DUMMY$ : I=I+1
  1108. 56350 ' PRINT DUMMY$ : A$=INPUT$(1)
  1109. 56400           ENDIF
  1110. 56450       ENDIF
  1111. 56500   WEND
  1112. 56550   DF_MAX=I-1
  1113. 56600   CLOSE #1
  1114. 56650   IF DG_FLAG=0 THEN
  1115. 56700       F_WORK=ASC("0")
  1116. 56720       MID$(DF_FILE0$,LEN(DF_FILE0$),1)=CHR$(F_WORK)
  1117. 56750       NAME DF_FILE$ AS DF_FILE0$
  1118. 56800    '  NAME DF_FILE0$ AS df_file$
  1119. 56850   ENDIF
  1120. 56900   GOSUB *元DEFチェック
  1121. 56950   RETURN
  1122. 57000 *元DEFなし
  1123. 57050   RETURN
  1124. 57100 *強制サポートセット
  1125. 57150   Y_N_FLAG(1)=1
  1126. 57200   Y_N_FLAG(2)=1
  1127. 57250   Y_N_FLAG(100)=1
  1128. 57300   Y_N_FLAG(47)=0
  1129. 57350   IF DG_FLAG=0 THEN
  1130. 57400       Y_N_FLAG(11)=0
  1131. 57450       Y_N_FLAG(12)=0
  1132. 57500       Y_N_FLAG(34)=0
  1133. 57550       Y_N_FLAG(52)=0
  1134. 57600       Y_N_FLAG(54)=0
  1135. 57650       Y_N_FLAG(55)=0
  1136. 57700       Y_N_FLAG(56)=0
  1137. 57750       Y_N_FLAG(57)=0
  1138. 57800       Y_N_FLAG(58)=0
  1139. 57850       Y_N_FLAG(59)=0
  1140. 57900       Y_N_FLAG(60)=0
  1141. 57950   ENDIF
  1142. 58000   RETURN
  1143. 58050 *開始画面設定
  1144. 58100   CLS
  1145. 58150   PLAY ON
  1146. 58200   PLAY "@51T180C8DE2DC8.R16C8DEDC8D2"
  1147. 58250   PLAY "@15"
  1148. 58300   PAGE=1
  1149. 58350   TRG(0)=8 : TRG(1)=44 : TRG(2)=53 : TRG(3)=43 : TRG(4)=46 : TRG(5)=45
  1150. 58400   LOCATE 0,0
  1151. 58450   PRINT " CATLOG小判鮫ソフト(^^;) DEF GENERATOR";VER$;" PED00201 JINX"
  1152. 58500   LINE (0,0)-(639,19),OR,%201,BF
  1153. 58550   LOCATE 0,2
  1154. 58600   PRINT "  このソフトは、飛雪さん作CATLOG.EXPの動作条件設定ファイルCATLOG.DEFを"
  1155. 58650   PRINT "  とりあえず使える状態にセットアップするものです。"
  1156. 58700   PRINT "    DEFGEN ";VER$;" は CATLOG ";VER_CL$;" のスイッチに対応しています。"
  1157. 58750   PRINT 
  1158. 58800   PRINT "  選択肢の用意されている項目は、マウスで希望の側を左クリックしてください。"
  1159. 58850   PRINT "  ファイル名を指定する必要のある項目では入力域にマウスを移動し左クリック後、"
  1160. 58900   PRINT "  キーボードからドライブ名:ディレクトリ名を入力してください。"
  1161. 58950   COLOR 5,,,4
  1162. 59000   LOCATE 3, 9 : PRINT "☆★設定画面のルール(^^)/~"
  1163. 59050   COLOR 7,,,0 : Y_WORK=10
  1164. 59100   LOCATE 5,Y_WORK : PRINT "必須設定項目を示します。この設定抜きにはCATLOGは動きません。"
  1165. 59150       X=5:Y=Y_WORK :M=70:C=205:GOSUB *ボックス
  1166. 59200   LOCATE 5,Y_WORK+1 : PRINT "設定した方が望ましい項目を示します。"
  1167. 59250       X=5:Y=Y_WORK+1:M=70:C=206:GOSUB *ボックス
  1168. 59300   LOCATE 7,Y_WORK+2 : PRINT "OFFにした場合にはCATLOGの初期値(カレントディレクトリ等)になります"
  1169. 59350       X=7:Y=Y_WORK+2 :M=56:C=206:GOSUB *ボックス
  1170. 59400   LOCATE 5,Y_WORK+3 : PRINT "選択した時にこの色になります。"
  1171. 59450       X=5:Y=Y_WORK+3 :M=70:C=207:GOSUB *ボックス
  1172. 59500   LOCATE 5,Y_WORK+4 : PRINT "選択されてない場合の表示色です。"
  1173. 59550       X=5:Y=Y_WORK+4 :M=70:C=202:GOSUB *ボックス
  1174. 59600   LOCATE 5,Y_WORK+5 : PRINT "更新して終了 更新せずに終了 のいずれかを左クリックで終了します。"
  1175. 59650       X=5:Y=Y_WORK+5 :M=12:C=203:GOSUB *ボックス
  1176. 59700       X=18:Y=Y_WORK+5 :M=14:C=204:GOSUB *ボックス
  1177. 59750   LOCATE 5,Y_WORK+6 : PRINT "また右クリックは 更新せずに終了 を左クリックと同じ動きとなります。"
  1178. 59800       X=18:Y=Y_WORK+6:M=14:C=204:GOSUB *ボックス
  1179. 59850   FOR I=0 TO 100 : Y_N_FLAG(I)=-1 : NEXT I
  1180. 59900   RETURN
  1181. 59950 *パレット設定
  1182. 60000   OPEN "DEFGENPT.DAT" FOR INPUT AS #1
  1183. 60050   I=200
  1184. 60100   WHILE NOT(EOF(1))
  1185. 60150       LINE INPUT #1,DUMMY$
  1186. 60200       IF LEFT$(DUMMY$,1)<>";" THEN
  1187. 60250           POI1=INSTR(DUMMY$,","):POI2=INSTR(POI1+1,DUMMY$,","):POI3=INSTR(POI2+1,DUMMY$,",")
  1188. 60300           GREEN=VAL(LEFT$(DUMMY$,POI1-1))
  1189. 60350           RED=VAL(MID$(DUMMY$,POI1+1,POI2-POI1-1))
  1190. 60400           BLUE=VAL(MID$(DUMMY$,POI2+1,POI3-POI2-1))
  1191. 60450           PALETTE I,[GREEN,RED,BLUE]
  1192. 60500           I=I+1
  1193. 60550        ENDIF
  1194. 60600   WEND
  1195. 60650   CLOSE #1
  1196. 60700   RETURN
  1197. 60750 *QUICK_SORT
  1198. 60800   FOR I=0 TO 100
  1199. 60850       JUN(I)=I : CMD_W$(I)=CMD$(I)
  1200. 60900   NEXT I
  1201. 60950   N=100
  1202. 61000   M=12
  1203. 61050   DIM SL(M),SR(M)
  1204. 61100   S=1 : SL(1)=0 : SR(1)=N
  1205. 61150   L=SL(S) : R=SR(S) : S=S-1
  1206. 61200   I=L : J=R : X$=CMD_W$(INT((L+R)/2))
  1207. 61250   IF CMD_W$(I)<X$ THEN I=I+1 : GOTO 61250
  1208. 61300   IF X$<CMD_W$(J) THEN J=J-1 : GOTO 61300
  1209. 61350   IF I<=J THEN SWAP CMD_W$(I),CMD_W$(J) : SWAP JUN(I),JUN(J) : I=I+1 : J=J-1
  1210. 61400   IF I<=J THEN 61250
  1211. 61450   IF I<R THEN S=S+1 : SL(S)=I : SR(S)=R
  1212. 61500   R=J
  1213. 61550   IF L<R THEN 61200
  1214. 61600   IF S<>0 THEN 61150
  1215. 61650   ERASE SL,SR
  1216. 61700 '  FOR I=0 TO 100:PRINT CMD_W$(I):A$=INPUT$(1):NEXT I
  1217. 61750   RETURN
  1218. 61800 *設定不良
  1219. 61850   COLOR 7,0,7,0 : CLS
  1220. 61900   PRINT "DEFGENのプログラムのあるディレクトリに正しく設定してから再起動してください"
  1221. 61950   PRINT : PRINT "プログラムは中断しました      <何かキーを押して下さい>"
  1222. 62000   A$=INPUT$(1)
  1223. 62050   STOP
  1224. 62100 *パラメタリード
  1225. 62150   DEF FNARGC& = PEEK(PEEK(VARPTR(SYSTEM,6) - 8,4),4)
  1226. 62200   DEF FNARGV& = PEEK(PEEK(VARPTR(SYSTEM,6) - 8,4) - 4,4)
  1227. 62250   DIM ARGVS$(10)   '読み出すパラメータの文字列
  1228. 62300   ARGC& = FNARGC&
  1229. 62350   IF ARGC& < 1 THEN PRINT "noting":END
  1230. 62400   ARGV& = FNARGV&
  1231. 62450   I=ARGC&-1
  1232. 62500   ARGVX& = PEEK((ARGV&+I*4),4)
  1233. 62550   ARGVS$(I) = ""
  1234. 62600   M& = 1
  1235. 62650   WHILE (M& <> 0)
  1236. 62700       M& = PEEK((ARGVX&),1)
  1237. 62750       ARGVS$(I) = ARGVS$(I)+CHR$(M&):ARGVX&=ARGVX&+1
  1238. 62800   WEND
  1239. 62850   IF LEFT$(ARGVS$(I),3)="-f:" THEN
  1240. 62900       DF_FILE$=RIGHT$(ARGVS$(I),LEN(ARGVS$(I))-3)
  1241. 62950       DF_FILE$=LEFT$(DF_FILE$,LEN(DF_FILE$)-1)
  1242. 63000       A=INSTR(DF_FILE$,".")
  1243. 63050       DF_FILE0$=LEFT$(DF_FILE$,A)+"DF0"
  1244. 63100   ELSE
  1245. 63150       DF_FILE$="..\CATLOG.DEF"
  1246. 63200       DF_FILE0$="..\CATLOG.DF0"
  1247. 63250   ENDIF
  1248. 63300   COLOR 6
  1249. 63350   LOCATE 7,Y_WORK+7: PRINT USING "※現在の編集対象は@です。";DF_FILE$;
  1250. 63400   COLOR 7
  1251. 63450   RETURN
  1252. 63500 *エラーやで
  1253. 63550   IF ERR=63 AND ERL=55300 THEN RESUME *元DEFなし
  1254. 63600   IF ERR=63 AND ERL=48300 THEN RESUME NEXT
  1255. 63650   IF ERR=63 AND ERL=49800 THEN RESUME NEXT
  1256. 63700   IF ERR=9 AND ERL=52950 THEN RESUME *スイッチ拡張対策
  1257. 63750   IF ERR=9 AND ERL=53050 THEN RESUME *スイッチ拡張対策
  1258. 63800   IF ERR=54 AND ERL=28100 THEN RESUME 28650
  1259. 63850   IF ERL=56750 THEN F_WORK=F_WORK+1 : RESUME 56720
  1260. 63900   IF ERR=63 AND ERL=54400 THEN
  1261. 63950        BEEP : CLS
  1262. 64000        PRINT "DEFGEN_D.DAT(スイッチデータファイル)がありません。"
  1263. 64050        RESUME *設定不良
  1264. 64100   ENDIF
  1265. 64150   IF ERR=63 AND ERL=60000 THEN
  1266. 64200        BEEP : CLS
  1267. 64250        PRINT "DEFGENPT.DAT(パレット設定ファイル)がありません。"
  1268. 64300        RESUME *設定不良
  1269. 64350   ENDIF
  1270. 64400   PRINT USING "ERR=#######    ERL=########";ERR,ERL
  1271. 64450   STOP
  1272.